Link oping Electronic Articles

advertisement
Linkoping Electronic Articles in
Computer and Information Science
Vol. 6(2001): nr ?
Ontologies in RDF(S)
Steen Staab
Michael Erdmann
Alexander Maedche
Institute AIFB
Karlsruhe University
76128 Karlsruhe, Germany
fstaab, erdmann, maedcheg@aifb.uni-karlsruhe.de
http://www.aifb.uni-karlsruhe.de/WBS
Linkoping University Electronic Press
Linkoping, Sweden
http:/
/www.ep.liu.se/ea/cis/2001/???/
Published on 30. December, 2001 by
Linkoping University Electronic Press
581 83 Linkoping, Sweden
Link
oping Electronic Articles in
Computer and Information Science
ISSN 1401-9841
Series editor: Erik Sandewall
c 2001 S. Staab, M. Erdmann, A.AMaedche
Typeset by the authors using L TEX
Formatted using etendu style
Recommended citation:
Authors>. <Title>. Linkoping Electronic Articles in
Computer and Information Science, Vol. 6(2001): nr ?.
http://www.ep.liu.se/ea/cis/2001/???/. 30. December, 2001.
<
This URL will also contain a link to the authors' home pages.
The publishers will keep this article on-line on the Internet
(or its possible replacement network in the future)
for a period of 25 years from the date of publication,
barring exceptional circumstances as described separately.
The on-line availability of the article implies
a permanent permission for anyone to read the article on-line,
to print out single copies of it, and to use it unchanged
for any non-commercial research and educational purpose,
including making copies for classroom use.
This permission can not be revoked by subsequent
transfers of copyright. All other uses of the article are
conditional on the consent of the copyright owners.
The publication of the article on the date stated above
included also the production of a limited number of copies
on paper, which were archived in Swedish university libraries
like all other written works published in Sweden.
The publisher has taken technical and administrative measures
to assure that the on-line version of the article will be
permanently accessible using the URL stated above,
unchanged, and permanently equal to the archived printed copies
at least until the expiration of the publication period.
For additional information about the Linkoping University
Electronic Press and its procedures for publication and for
assurance of document integrity, please refer to
its WWW home page: http://www.ep.liu.se/
or by conventional mail to the address stated above.
Abstract
RDF(S)1 constitutes a newly emerging standard for metadata
that is about to turn the World Wide Web into a machineunderstandable knowledge base. It is an XML application that
allows for the denotation of facts and schemata in a web-compatible
format, building on an elaborate object-model for describing
concepts and relations. Thus, it might turn up as a natural
choice for a widely-useable ontology description language. However, its lack of capabilities for describing the semantics of concepts and relations beyond those provided by inheritance mechanisms makes it a rather weak language for even the most austere
knowledge-based system. This paper presents an approach for
modeling ontologies in RDF(S) that also considers axioms as objects that are describable in RDF(S). Thus, we provide exible,
extensible, and adequate means for accessing and exchanging axioms in RDF(S). Our approach follows the spirit of the World
Wide Web, as we do not assume a global axiom specication
language that is too intractable for one purpose and too weak
for the next, but rather a methodology that allows (communities
of) users to specify what axioms are interesting in their domain.
This paper is a revised version of a paper presented at the
ECDL-2000 Workshop on Semantic Web, Lisbon, Portugal, September 2000.
1 We
use \RDF(S)" to refer to the combined technologies of RDF and RDFS.
1
1
Introduction
The development of the World Wide Web is about to mature from a technical platform that allows for the transportation of information from sources
to humans (albeit in many syntactic formats) to the communication of
knowledge from Web sources to machines. The knowledge food chain has
started with technical protocols and preliminary formats for information
presentation (HTML { HyperText Markup Language) over a general methodology for separating information contents from layout (XML { eXtensible
Markup Language, XSL { eXtensible Stylesheet Language) to reach the
realms of knowledge provisioning by the means of RDF and RDFS.
RDF (Resource Description Framework) is a W3C recommendation
(Lassila & Swick, 1999) that provides description facilities for knowledge
pieces, viz. for triples that denote relations between pairs of objects. To
exchange and process RDF models they can be serialized in XML. RDF
exploits the means of XML to allow for disjoint namespaces, linking and referring between namespaces and, hence, is a general methodology for sharing
machine-processable knowledge in a distributed setting. On top of RDF the
simple schema language RDFS (Resource Description Framework Schema;
(Brickley & Guha, 1999)) has been dened to oer a distinguished vocabulary to model class and property hierarchies and other basic schema primitives that can be refered to from RDF models. To phrase the role of RDFS
in knowledge engineering terminology, it allows to dene a simple ontology that particular RDF documents may be checked against to determine
consistency.
Ontologies have shown their usefulness in application areas such as intelligent information integration or information brokering. Therefore their
use is highly interesting for web applications, which may also prot from
long term experiences made in the knowledge acquisition community. Nevertheless, while support for modeling of ontological concepts and relations
has been extensively provided in RDF(S), the same cannot be said about
the modeling of ontological axioms | one of the key ingredients in ontology
denitions and one of the major benets of ontology applications.
RDF(S) oers only the most basic modeling primitives for ontology modeling. Even though there are good and bad choices for particular formal
languages, one must face the principal trade-o between tractability and
expressiveness of a language. RDF(S) has been placed nearer to the low
end of expressiveness, because it has been conceived to be applicable to
vast web resources! In contrast to common knowledge representation languages, RDF(S) has not been meant to be the denitive answer to all knowledge representation problems, but rather an extensible core language. The
namespace and reication mechanisms of RDF(S) allow (communities of)
users to dene their very own standards in RDF(S) format | extending the
core denitions and semantics. As RDF(S) leaves the well-trodden paths
of knowledge engineering at this point, we must reconsider crucial issues
concerning ontology modeling and ontology applications. To name but a
few, we mention the problem of merging and mapping between namespaces,
scalability issues, or the denition and usage of ontological axioms.
In this paper we concentrate on the latter, namely on how to model
axioms in RDF(S) following the stipulations, (i), that the core semantics of
RDF(S) is re-used such that \pure" RDF(S) applications may still process
the core object-model denitions, (ii), that the semantics is preserved between dierent inferencing tools (at least to a large extent), and, (iii), that
axiom modeling is adaptable to reect diverging needs of dierent com-
2
munities. Current proposals neglect or even conict with one or several
of these requirements. For instance, the rst requirement is violated by
the ontology exchange language XOL (Karp et al., 1999) making all the
object-model denitions indigestible for most RDF(S) applications. The interchangeability and adaptability stipulation is extremely diÆcult to meet
by the parse-tree-based representation of MetaLog (Marchiori & Saarela,
1998), since it obliges to rst-order logic formulae. We will show how to
adapt a general methodology that we have proposed for axiom modeling
(Staab & Maedche, 2000) to be applied to the engineering of ontologies with
RDF(S). Our approach is based on translations of RDF(S) axiom specications into various target systems that provide the inferencing services. As
our running example, we map axiom specications into an F-Logic format
that has already served as the core system for SiLRi, an inference service
for core RDF (Decker et al., 1998). Our methodology is centered around
categorization of axioms, because this allows for a more concise description
of the semantic meaning rather than a particular syntactic representation
of axioms. Thus, we get a better grip on extensions and adaptations to
particular target inferencing systems.
In the following, we introduce the RDF(S) data model and describe how
to dene an object model in RDF(S) including practical issues of ontology
documentation (Section 2). Then we describe our methodology for using
RDF(S) such that axioms may be engineered and exchanged. We describe
the core idea of our approach and illustrate with several examples how to realize our approach (Section 3). In a case study (Section 4) we illustrate the
application of our approach in our ontology engineering environment, OntoEdit, and our semantic community web portal, KA2Portal (Staab et al.,
2000). Before we conclude, we give a brief survey of related work.
2
Modeling Concepts and Relations in RDF(S)
In this section we will rst take a look at the core ontology engineering
task, i.e. at the RDF(S) data model proper, and then exploit RDF(S) also
for purposes of practical ontology engineering, viz. for documentation of
newly dened or reused ontologies. This will lay the groundwork for the
modeling of axioms in Section 3.
2.1
The RDF(S) Data Model
RDF(S) is an abstract data model that denes relationships between entities
(called resources in RDF) in a similar fashion as semantic nets. Statements
in RDF describe resources, that can be web pages or surrogates for real
world objects like publications, pieces of art, persons, or institutions. We
illustrate how concepts and relations can be modelled in RDF(S) by presenting a sample ontology in the abstract data model and only afterwards show
how these concepts and relations are presented in the XML-serialisation of
RDF(S).
2.1.1
RDF
As already mentioned RDF(S) consists of two closely related parts: RDF
and RDF Schema. The foundation of RDF(S) is laid out by RDF which
denes basic entities, like resources, properties, and statements. Anything
in RDF(S) is a resource. Resources may be related to each other or to
literal (i.e. atomic) values via properties. Such a relationship represents a
3
marriedWith
http://www.foo.com/W.Simth
firstName
William
http://www. foo.com/S.Simth
lastName
firstName
Smith
lastName
Susan
Smith
a)
http://www. vatican.va/holy_father
confirmedBy
marriedWith
http://www.foo.com/W.Simth
firstName
b)
William
http://www. foo.com/S.Smith
lastName
firstName
Smith
Susan
lastName
Smith
http://www. vatican.va/holy_father
c)
confirmedBy
rdf:subject
http://www.foo.com/W.Simth
firstName
William
lastName
Smith
rdf:type
rdf:predicate
marriedWith
rdf:Statement
rdf: object
http://www. foo.com/S.Smith
firstName
Susan
lastName
Smith
Figure 1: An example RDF data model.
statement that itself may be considered a resource, i.e. reication is directly
built into the RDF data model. Thus, it is possible to make statements
about statements. These basic notions can be easily depicted in a graphical
notation that resembles semantic nets. To illustrate the possibilities of
pure RDF the following statements are expressed in RDF and depicted in
Figure 12 :
Firstly, in part (a) of Figure 1 two resources are dened, each carrying
a firstName and a lastName property with literal values, identifying the resources as William and Susan Smith, respectively. These
two resources come with a URI as their unique global identier and
they are related via the property marriedWith, which expresses that
William is married with Susan.
Part (b) of the illustration shows a convenient shortcut for express-
ing more complex statements, i.e. reifying a statement and dening
a property for the new resource. The example denotes that the marriage between William and Susan has been conrmed by the resource
representing the Holy Father in Rome.
The RDF data model oers the predened resource rdf:statement and
the predened properties rdf:subject, rdf:predicate, and rdf:object
to reify a statement as a resource. The actual model for the example
(b) is depicted in part (c) of Figure 1. Note that the reied statement makes no claims about the truth value of what is reied, i.e. if
one wants to express that William and Susan are married and that
this marriage has been conrmed by the pope then the actual data
model must contain a union of part (a) and part (c) of the example
illustration.
2 Resources are represented by ovals, literal values by shaded rectangles and properties
by directed, labeled arcs.
4
2.1.2
RDFS
As a companion standard to RDF, the schema language RDFS is more
important with respect to ontological modeling of domains. RDFS oers
a distinguished vocabulary dened on top of RDF to allow the modelling
of object models with cleanly dened semantics. The terms introduced in
RDFS build the groundwork for the extensions of RDF(S) that are proposed
in this paper. The relevant RDFS terms are presented in the following list.
The most general class in RDF(S) is rdfs:Resource. It has two sub-
classes, namely rdfs:Class and rdf:Property (cf. Figure 23 ). When
specifying a domain specic schema for RDF(S), the classes and properties dened in this schema will become instances of these two resources.
The resource rdfs:Class denotes the set of all classes in an object-
oriented sense. That means, that classes like appl:Person or appl:Organisation
are instances of the meta-class rdfs:Class.
The same holds for properties, i.e. each property dened in an ap-
plication specic RDF schema is an instance of rdf:Property, e.g.
appl:marriedWith
RDFS denes the special property rdfs:subClassOf that denes the
subclass relationship between classes. Since rdfs:subClassOf is transitive, denitions are inherited by the more specic classes from the
more general classes and resources that are instances of a class are
automatically instances of all superclasses of this class. In RDF(S) it
is prohibited that any class is an rdfs:subClassOf itself or of one of
its subclasses.
Similar to rdfs:subClassOf, which denes a hierarchy of classes, an-
other special type of relation rdfs:subPropertyOf denes a hierarchy of
properties, e.g. one may express that fatherOf is an rdfs:subPropertyOf
parentOf.
RDFS allows to dene the domain and range restrictions associated
with properties. For instance, these restrictions allow the denition
that persons and only persons may be marriedWith and only with
other persons.
As depicted in the middle layer of Figure 2 the domain specic classes
appl:Person, appl:Man, and appl:Woman are dened as instances of rdfs:Class.
In the same way domain specic property types are dened as instances of
rdf:Property, i.e. appl:marriedWith, appl:firstName, and appl:lastName.
2.1.3
The use of XML Namespaces in RDF(S)
The XML namespace mechanism plays a crucial role for the development
of RDF schemata and applications. It allows to distinguish between different modeling layers (cf. Figure 2 and 3) and to reuse and integrate existing schemata and applications. At the time being, there exist a number
of canonical namespaces, e.g. for RDF, RDFS, and Dublin Core (cf. Section 2.2). We here introduce two new namespaces that aim at two dierent
3 The reader may note that only a very small part of RDF(S) is depicted in the
RDF/RDFS layer of the gure. Furthermore, the relation appl:marriedWith in the
data layer is identical to the resource appl:marriedWith in the schema layer.
5
rdfs:Class
rdf:Property
appl:Organisation
appl:Person
appl:Man
appl:Woman
http://www.foo.com/W.Smith
appl:firstName
William
appl:marriedWith
appl:marriedWith
appl:lastName
Smith
appl:firstName
appl:lastName
http://www. foo.com/S.Smith
appl:firstName
Susan
appl:lastName
Smith
application specific
schema and namespace
rdfs:Resource
application specific
actual data
instanceOf (rdf:type)
RDF/RDFS layer
and namespace
subClassOf (rdfs:subClassOf)
Figure 2: An example RDF schema and its embedding in RDF(S).
objectives, viz. the comprehensive documentation of ontologies and the capturing of our proposal for the modeling of ontological axioms
An actual ontology denition occurs at a concrete URL4 . It denes shorthand notations which refer to our actual namespaces for ontology documentation and modeling of ontological axioms, abbreviated odoc and o, respectively. An actual application that uses our example ontology will dene a
shorthand identier like appl in order to refer to this particular, applicationspecic ontology. Figures 2 and 3 presume these shorthand notations for
the namespaces we have just mentioned.
2.1.4
XML serialization of RDF(S)
One important aspect for the success of RDF in the WWW is the way RDF
models are represented and exchanged, namely via XML. In the following
excerpt of the RDF schema document http://ontoserver.aifb.uni-karlsruhe.de/schema/example.rdf,
the classes and property types dened in Figure 2 are represented in XML
and the domains and ranges of the properties are dened using the RDF
constraint properties rdfs:domain and rdfs:range.
<rdf:Description ID="Person">
<rdf:type resource="http://www.w3.org/TR/1999/PR-rdf-schema-19990303#Class"/>
<rdfs:subClassOf
rdf:resource="http://www.w3.org/TR/1999/PR-rdf-schema-19990303#Resource"/>
</rdf:Description>
<rdf:Description ID="Man">
<rdf:type resource="http://www.w3.org/TR/1999/PR-rdf-schema-19990303#Class"/>
<rdfs:subClassOf rdf:resource="#Person"/>
</rdf:Description>
<rdf:Description ID="Woman">
<rdf:type resource="http://www.w3.org/TR/1999/PR-rdf-schema-19990303#Class"/>
<rdfs:subClassOf rdf:resource="#Person"/>
</rdf:Description>
4 The reader may actually compare with the documents that appear at these URLs,
e.g. http://ontoserver.aifb.uni-karlsruhe.de/schema/example.rdf
6
<rdf:Description ID="Organisation">
<rdf:type resource="http://www.w3.org/TR/1999/PR-rdf-schema-19990303#Class"/>
<rdfs:subClassOf
rdf:resource="http://www.w3.org/TR/1999/PR-rdf-schema-19990303#Resource"/>
</rdf:Description>
<rdf:Description ID="firstName">
<rdf:type
resource="http://www.w3.org/TR/1999/PR-rdf-schema-19990303#Property"/>
<rdfs:domain rdf:resource="#Person"/>
<rdfs:range rdf:resource="http://www.w3.org/TR/xmlschema-2/#string"/>
</rdf:Description>
<rdf:Description ID="lastName">
<rdf:type
resource="http://www.w3.org/TR/1999/PR-rdf-schema-19990303#Property"/>
<rdfs:domain rdf:resource="#Person"/>
<rdfs:range rdf:resource="http://www.w3.org/TR/xmlschema-2/#string"/>
</rdf:Description>
<rdf:Description rdf:ID="marriedWith">
<rdf:type
resource="http://www.w3.org/TR/1999/PR-rdf-schema-19990303#Property"/>
<rdfs:domain rdf:resource="#Person"/>
<rdfs:range rdf:resource="#Person"/>
</rdf:Description>
2.2
Modeling ontology metadata using RDF Dublin
Core
Metadata about ontologies, such as the title, authors, version, statistical
data, etc. are important for practical tasks of ontology engineering and
exchange. In our approach we have adopted the well-established and standardized RDF Dublin Core Metadata element set (Weibel & Miller, 1998).
This element set comprises fteen elements which together capture basic
aspects related to the description of resources. Ensuring a maximal level of
generality and exchangeability, our ontologies are labeled using this basic element set. Since ontologies represent a very particular class of resource, the
general Dublin Core metadata description does not oer suÆcient support
for ontology engineering and exchange. Hence, we describe further semantic
types in the schema located at
http://ontoserver.aifb.uni-karlsruhe.de/schema/ontodoc
and instantiate these types when we build a new ontology. The example
below illustrates our usage and extension of Dublin Core by an excerpt of
an exemplary ontology metadata description.
<?xml version='1.0' encoding='ISO-8859-1'?>
<rdf:RDF xmlns:rdf = "http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc = "http://purl.oclc.org/dc"
xmlns:odoc = "http://ontoserver.aifb.uni-karlsruhe.de/schema/ontodoc">
<rdf:Description about = "">
<dc:Title>An Example Ontology</dc:Title>
<dc:creator>
<rdf:Bag>
<rdf:li>Steffen Staab</rdf:li>
<rdf:li>Michael Erdmann</rdf:li>
<rdf:li>Alexander Maedche</rdf:li>
</rdf:Bag>
</dc:creator>
<dc:date>2000-02-29</dc:date>
<dc:format>text/xml</dc:format>
<dc:description>
An example ontology modeled for this small application
</dc:description>
<dc:subject>Ontology, RDF</dc:subject>
<odoc:url>http://ontoserver.aifb.uni-karlsruhe.de/schema/example.rdf</odoc:url>
<odoc:version>2.1</odoc:version>
<odoc:last_modification>2000-03-01</odoc:last_modification>
<odoc:ka_technique>semi-automatic text knowledge acquisition</odoc:ka_technique>
7
<odoc:ontology_type>domain ontology</odoc:ontology_type>
<odoc:no_concepts>24</odoc:no_concepts>
<odoc:no_relations>13</odoc:no_relations>
<odoc:no_axioms>9</odoc:no_axioms>
<odoc:highest_depth_level>4</odoc:highest_depth_level>
</rdf:Description>
</rdf:RDF>
3
Modeling of Axioms in RDF(S)
Having prepared the object-model and documentation backbone for ontologies in RDF(S), we may now approach the third pillar of our approach,
viz. the specication of axioms in RDF(S). The basic idea that we pursue
is the specication and serialization of axioms in RDF(S) such that they
remain easily representable and exchangeable between dierent ontology
engineering, representation and inferencing environments. The principal
specication needs to be rather independent of particular target systems
(to whatever extent this is possible at all) in order to be of value in a distributed web setting with many dierent basic applications.
3.1
Axioms are Objects, too
Representation of interesting axioms that are deemed to be applied in different inferencing applications turns out to be diÆcult. The reason is that
typically some kind of non-propositional logic is involved that deals with
quantiers and quantier scope. Axioms are diÆcult to grasp, since the representation of quantier scope and its likes is usually what the nitty-gritty
details of a particular syntax, on which a particular inferencing application
is based, are about. An ontology representation in RDF(S) should, however,
abstract from particular target systems.
A closer look at the bread and butter issues of ontology modeling reveals
that many axioms that need to be formulated aim at much simpler purposes
than arbitrary logic structures. Indeed, we have found that many axioms
in our applications belong to one of a list of major axiom categories:
1. Axioms for a relational algebra
(a)
(b)
(c)
(d)
(e)
(f)
(g)
Reexivity of relations
Irreexivity of relations
Symmetry of relations
Asymmetry of relations
Antisymmetry of relations
Transitivity of relations
Inverse relations
2. Composition of relations5
3. (Exhaustive) Partitions6
4. Axioms for subrelation relationships
5. Axioms for part-whole reasoning
5 E.g.,
fatherInLawOf
.
6 E.g., concepts
marriedWith
is composed by the relations
Man and Woman share no instances.
fatherOf
and
8
6. Axioms that are derivations of the above mentioned
(a) Locally symmetric relations
(b) Locally transitive relations
(c) Locally inverse relations
Our principal idea for representing ontologies with axioms in RDF(S) is
based on this categorization. The categories allow to distinguish between
the structures that are repeatedly found in axiom specications from a corresponding description in a particular language. Hence, one may describe
axioms as complex objects (one could term them instantations of axiom
schemata) in RDF(S) that refer to concepts and relations, which are also
denoted in RDF(S). For sets of axiom types we presume the denition of
dierent RDF schemata. Similar to the case of simple metadata structures,
the RDF schema responsible for an axiom categorization obliges to a particular semantics of its axiom types | which may be realized in a number of
dierent inferencing systems like description logics systems (e.g., (Horrocks,
1998)) or frame logic systems (Decker et al., 1998). The schema dened in
our namespace http://ontoserver.aifb.uni-karlsruhe.de/schema/ontordf
stands for the semantics dened in this and our previous papers (Maedche et al., 2000; Staab & Maedche, 2000).7 The schema is also listed in the
appendix of this paper (cf. Section A). Other communities may, of course,
nd other reasoning schemes more important, or they may just need an
extension compared to what we provide here.
At the symbol level, we provide a RDF(S) syntax (i.e. serialization) to
denote particular types of axioms. The categorization really constitutes a
knowledge level that is independent from particular machines. In order to
use an ontology denoted with our RDF(S) approach, one determines the
appropriate axiom category and its actual instantiation found in a RDF(S)
piece of ontology, translates it into a corresponding logical representation
and executes it by an inferencing engine that is able to reason with (some
of) the relevant axiom types.
Figure 3 summarizes our approach for modeling axiom specications in
RDF(S). It depicts the core of the RDF(S) denitions and our extension
for axiom categorizations (i.e. our ontology meta layer). A simple ontology,
especially a set of application specic relationships, is dened in terms of
our extension to RDF(S).
In the following subsections, we will further elucidate our approach by
proceeding through a few simple examples of our categorization of axiom
specications listed above. In particular our scheme is, (A) to show the representations of axioms in RDF(S) and (B) to show a structurally equivalent
F(rame)-Logic representation that may easily be derived from its RDF(S)
counterpart (cf. (Kifer et al., 1995; Decker, 1998) on F-Logic). Then, (C) we
exploit the expressiveness of F-Logic in order to specify translation axioms
that work directly on the F-Logic object representation of axioms. Thus,
(B) in combination with (C) describes a formally concise and executable
translation. For better illustration, we nally, (D), indicate the result of
our translation by exemplary target representations of the axioms stated in
RDF(S).
The reader should note here that we do neither believe that F-Logic fullls all the requirements that one might wish from an ontology inferencing
language, nor do we believe that the axiom types we mention exhaust all
7 The reader may note that we have chosen names to coincide with many conventional
names, e.g. \symmetry" of relations.
9
RDF/RDFS
layer and
namespace
subClassOf (rdfs:subClassOf)
rdfs:Resource
rdfs:Class
rdf:Property
o:
c
appl:Person
appl:Man
appl:Woman
William
appl:fatherInLaw
appl:lastName
o:Irreflexive
o:Symmetric
o:Reflexive
appl:fatherOf
appl:marriedWith
http://www.foo.com/S.Smith
appl:firstName
Smith
o:Transitive
o :se
cond
C om
o :fir
po ne
stC
nt
omp
one n
po
t
se
e
appl:marriedWith
http://www.foo.com/W.Smith
appl:firstName
om
appl:lastName
Susan
Application-specific
schema and
namespace
appl:Organisation
o:Asymmetric
o:PartOfRel
o:PartonomicRolePropagation
ontology meta layer
and namespace
o:Relation
o:Composition
o:isInverseRelationOf
o:Partition
Applicationspecific
actual data
instanceOf (rdf:type)
Smith
Figure 3: An excerpt of the example object model and an instantiation of
classes, properties, and axioms in RDF(S)
relevant types. Rather we believe that our experiences in particular domains
will push for further categorizations of axioms, further translation mechanisms, and, hence, further extensions of the core RDF(S) representation.
All that will have to be agreed upon by communities that want to engineer and exchange ontologies with interesting axioms across particularities
of inference engines. Our main objective is to acquaint the reader with our
principle methodology that is transportable to other translation approaches,
inferencing systems, and other axiom types, when need arises.
3.2
Axioms for a relational algebra
The axiom types that we have shown above are listed such that simpler
axioms tend to appear rst. Axiom specications that are referred to as
\axioms for a relational algebra" rank among the simplest ones. They describe axioms with rather local eects, because their implications only aect
one or two relations. We here show one simple example of these in order to
explain the basic approach and some syntax. The principle approach easily
transfers to all axiom types from 1.(a)-(g) to 5.
Let us consider an example for symmetry. A common denotation for the
symmetry of a relation marriedWith (such as used for \William is married
with Susan') in rst-order predicate logic boils down to:
(1) 8X; Y
(
marriedWith X; Y
)
(
marriedWith Y ; X
).
In F-Logic, this would be a valid axiom specication, too. Most often,
however, modelers that use F-Logic take advantage of the object-oriented
syntax. Concept denitions in F-Logic for Person having an attribute
marriedWith and Man being a subconcept of Person is given in (2), while
a fact that William is a Man who is marriedWith Susan appears like in (3).
10
Person[
Man::Person.
(3) William:Man[
(2)
)
)
marriedWith
Person].
marriedWith
!
! Susan].
Hence, a rule corresponding to (1) is given by (4).
(4) 8X; Y
[
Y marriedWith
!
! X]
[
X marriedWith
!
! Y ]:
We denote symmetry as a predicate that holds for particular relations:
(5)
(
).
Symmetric marriedWith
In RDF(S), this specication may easily be realized by a newly agreed
upon class o:Symmetric:
(6) <o:Symmetric rdf:ID="marriedWith"/>
For a particular language like F-Logic, one may then derive the implications of symmetry by a general rule and, thus, ground the meaning of
the predicate Symmetric in a particular target system. The corresponding
transformation rule (here in F-Logic) states that if for all symmetric relations R and object instances X and Y it holds that X is related to Y via
R, then Y is also related to X via R.
(7) 8R; X; Y
[ !
! X]
( ) and X [R !
! Y ]:
symmetric R
Y R
This small example already shows three advantages:
1. The axiom specication (6) is rather target-system independent.
2. It is easily realizable in RDF(S).
3. Our approach for denoting symmetry is much sparser than its initital counterpart (4), because (7) is implicitly assumed as the agreed
semantics for our schema denition.
The latter point deserves some more attention: Obviously, the agreement
cannot directly be described in RDF(S). Thus, it is subject to specications
of RDF(S) terminology outside of the RDF(S) documents, which need to
be agreed upon by a community of users. This might be considered a
disadvantage, however, this is eventually the case for RDF, RDFS, and all
of their extensions like OIL or DAML+OIL.
Following our strategy sketched in the previous subsection, these steps
from RDF representation to axiom meaning are now summarized in Table 1.
For easier understanding, we will reuse this table layout also in the following
subsection.
A
B
C
D
<o:Symmetric rdf:ID="marriedWith"/>
8
8
(
Y [R
!!
)
Symmetric marriedWith
R; X; Y
X; Y
[
[
X
]
RDF(S)
F-Logic Representation
( )
Y ]:
Translation Axiom
!!
Symmetric R
and
X marriedWith
Y marriedWith
!!
!!
[
X R
Y
]
]
X :
Table 1: Symmetry
Target Axiom
11
A
<o:Composition rdf:ID="FatherInLawComp">
<o:composee rdf:Resource="fatherInLawOf"/>
<o:firstComponent rdf:Resource="fatherOf"/>
<o:secondComponent rdf:Resource="marriedWith"/>
</o:Composition>
B
C
8
8
(
!!
Composition fatherInLawOf
R; Q; S; X; Y; Z
D
X; Y; Z
[
[
X S
Z
]
,
,
(
!!
Composition S; R; Q
!!
X fatherInLawOf
[
X fatherOf
Y
)
fatherOf marriedWith
Z
] and
]
)andX [R
!!
[
Y
Y marriedWith
] and
!!
[
Y Q
!!
]
Z :
]
Z :
Table 2: Composition
3.3
Composition of relations
The next example concerns composition of relations. For instance, if a rst
person is fatherOf a second person who is marriedWith a third person
then one may assert that the rst person is the fatherInLawOf the third
person. Again dierent inferencing systems may require completely different realizations of such an implication. The object description of such
an axiom may easily be denoted in F-Logic or in RDF(S) (cf. Table 2).
The transformation rule works very similarly as the transformation rule for
symmetry.
3.4
Locally inverse relations
In our practice of implementing several knowledge portals8 we found that
the inferences brought about by categories 1 to 5 were extremely useful.
However, we also felt that these categories were often too general to be
applied directly or when they were applied they easily yielded overly generic
results.
For instance, given a conceptual model with concepts WeddingParty ,
Person, PartyService and properties hasMember, partyAt, and serve. The
denition of inverses is desirable. However, dening that the inverse of
partyAt is hasMember and that the inverse of serve is also hasMember
leads to undesired consequences, viz. it entails that for every person who
does partyAt a particular wedding party there is a | correct |- relation,
hasMember, from the party to this person and an | incorrect | relation,
serve, from that person to that party. Thus, without intricate changes
to the conceptual model one would have to live without the denition of
inverses.
An easily viable way around the problem is the denition of local inverseness that also consider the domain of a relation9 , before asserting an
inverse relationship. Thus, (8) asserts that the inverse of hasMember is
partyAt, only if the corresponding domain is restricted to WeddingParty .
(8)
LocalInverse
(WeddingParty ; hasMember; Person; partyAt)
Table 3 captures the corresponding translation and target axioms.
8 Cf.
2001)
(Staab et
and
al.,
2000;
Staab
&
Maedche,
2001;
Staab
et
al.,
http://ontobroker.aifb.uni-karlsruhe.de/demos.html,
http://ontobroker.semanticweb.org/.
9 Actually, we have extended the model to consider either restrictions of the domain
of a property or of its range or of its domain and its range.
12
A
B
C
D
<o:LocalInverse rdf:ID="hasMemberVsPartyAt">
<o:firstDomain rdf:Resource="WeddingParty"/>
<o:firstRelation rdf:Resource="hasMember"/>
<o:secondDomain rdf:Resource="Person"/>
<o:secondRelation rdf:Resource="partyAt"/>
</o:LocalInverse>
(WeddingParty ; hasMember; Person; partyAt)
Y [Q
X]
LocalInverse(C; R; D; Q) and X [R
Y ] and X : C:
X; Y; R; C; Q; D
Y [R
X]
LocalInverse(C; R; D; Q) and X [Q
Y ] and X : D:
X; Y
Y [partyAt
X]
X [hasMember
Y ] and X : WeddingParty :
X; Y
Y [hasMember
X]
X [partyAt
Y ] and X : Person:
8
8
8
8
LocalInverse
X; Y; R; C; Q; D
!!
!!
!!
!!
!!
!!
!!
!!
Table 3: Locally inverse
3.5
General axioms
Our approach of axiom categorization is not suited to cover every single
axiom specication one may think of. Hence, we still must allow for axioms
that are specied in a particular language like rst-order predicate logic
and we must allow for their representation in RDF(S). There are principally
two ways to approach this problem. First, one may conceive a new RDF(S)
representation format that is dedicated to a particular inferencing system for
reading and performing inferences. This is the way that has been choosen
for OIL (Horrocks et al., 2000), which has a RDF(S) style representation
for a core description logics, or Metalog (Marchiori & Saarela, 1998), which
represents Horn clauses in RDF(S) format.
The alternative is to fall back to a representation that is even more
application specic, viz. the encoding of ontological axioms in pure text, or
\CDATA" in RDF speak (cf. the example below). In fact, the latter is a
very practical choice for many application-specic axioms | once you make
very deep assumptions about a particular representation, you are also free
to use whatever format you like.
<o:GeneralAxiom rdf:ID="WhoPaidForTheWeddingParty">
<o:text lang="flogic">
<![CDATA[
FORALL w, x, y, z
w:Wedding[groom->x, bride->y, billTo->z] <z[fatherInLawOf->x:Man] AND x[marriedWith->y].
]]>
</o:text>
</o:GeneralAxiom>
4
4.1
Case Study: Semantic Community Web Portal
Setting
The semantic community Web portal, KA2Portal, that we have built for
the knowledge acquisition community (Staab et al., 2000) serves as an entry
point for linking to and sharing knowledge about the knowledge acquisition
research community and its work. Information may be provided and ac-
13
cessed using ontology structures for easier discovery of ressources as well as
for easier development and maintenance of the portal.
Figure 4 depicts the overall framework. Based on the community ontology, actual facts are contributed by the knowledge acquisition community
or crawled from their web sites, e.g. annotated web pages or RDF sources.
The SiLRi reasoning engine (Decker et al., 1998) provides the ontology service and allows for querying the accumulated knowledge base. Thus it acts
as the back end for the actual portal. Users may either query the inference
engine by clicking together a query or they may use forms of the web portal
to retrieve knowledge.
Semantic inferences are crucial for the service that is provided by the
KA2Portal. So far, people could contribute semantic information, e.g. by
providing RDF sources. However, it was so far impossible to provide semantics about these RDF sources beyond the means that are inherent in core
RDF(S). Conversely, the ontology was described in F-Logic (Kifer et al.,
1995). Therefore, people could look at the KA2 ontology, but the ontology
was initially not built with the spirit of the Semantic Web, as it was not
transparent to software agents on the Web and not reusable by them.
HTML-A
instantiate
Community
Ontology
HTML -A
HTML-A
Annotated web pages
Categorized &
Instantiiated
Axioms
instantiate
...
RDF
Crawl
BibTeX Bibliography
Database
Community Web Portal
SiLRi Reasoning
Ontology + Service
query
Figure 4: KA2Portal
Hence, there came up the need for representing the whole ontology,
including axioms, on the Web. Thereby we felt two needs. First we did
not want to come up with our own ideosyncratic syntax, but rather wanted
to adhere to RDF(S) mechanisms as elaborated above. Second, we wanted
to provide some tool support for engineering axioms. The framework that
we have shown above allowed us both. We will show some excerpt of its
application in the KA2Portal in the following.
4.2
Modeling the core ontology
We use our Ontology Engineering Environment OntoEdit for engineering
class and property denitions in RDF(S) with graphical means. In particular, we may express that (cf. Figure 5 left and upper right window)
14
Book , Journal, and Article are all subclasses of Publication
A Book
Article
A Journal
Article
An Article is
Book
An Article is
Journal
containsArticle
containsArticle
inBook
inJournal
This is specied in RDF(S) as follows:
<rdfs:Class rdf:ID="Publication"/>
<rdfs:Class rdf:ID="Article">
<rdfs:subClassOf rdf:resource="Publication"/>
</rdfs:Class>
<rdfs:Class rdf:ID="Book">
<rdfs:subClassOf rdf:resource="Publication"/>
</rdfs:Class>
<rdfs:Class rdf:ID="Journal">
<rdfs:subClassOf rdf:resource="Publication"/>
</rdfs:Class>
<rdf:Property rdf:ID="containtsArticle">
<rdfs:domain rdf:resource="Publication"/>
<rdfs:range rdf:resource="Article"/>
</rdf:Property>
<rdf:Property rdf:ID="inBook"/>
<rdfs:domain rdf:resource="Article"/>
<rdfs:range rdf:resource="Book"/>
</rdf:Property>
<rdf:Property rdf:ID="inJournal"/>
<rdfs:domain rdf:resource="Article"/>
<rdfs:range rdf:resource="Journal"/>
</rdf:Property>
The ontology denes the conceptual backbone for contributing RDF
metadata, e.g. bibliography entries:
....
4.3
<ka2:Book rdf:ID="book:WeavingTheWeb">
<ka2:author rdf:resource="http://w3c.org/person/tbl"/>
<ka2:title>Weaving The Web</ka2:title>
</ka2:Book>
Modeling an ontology with axioms in RDF(S)
The axioms complete the core ontology. For KA2Portal we use locally
inverse relations in order to express that:
If a particular book
containsArticle
is related via inBook to that book.
a particular article, this article
If a particular article appears
inBook in a particular book, this book
is related via containsArticle that article.
If a particular journal containsArticle a particular article, this article
is related via inJournal to that book.
If a particular article appears
inJournal in a particular journal, this
journal is related via containsArticle that article.
15
Left: KA2 Taxonomy; Right: Interface for Inverseness and Local
Inverseness of Relations explanation!!
Figure 5: Snapshot of OntoEdit Web Ontology Workbench
Specied in our RDF(S) style denotation of axioms this boils down to:
<o:LocalInverse>
<o:firstDomain rdf:Resource="Book"/>
<o:firstRelation rdf:Resource="containsArticle"/>
<o:secondDomain rdf:Resource="Article"/>
<o:secondRelation rdf:Resource="inBook"/>
</o:LocalInverse>
<o:LocalInverse>
<o:firstDomain rdf:Resource="Journal"/>
<o:firstRelation rdf:Resource="containsArticle"/>
<o:secondDomain rdf:Resource="Article"/>
<o:secondRelation rdf:Resource="inJournal"/>
</o:LocalInverse>
OntoEdit allows to provide the components, o:firstDomain, o:firstRelation,
in a table (cf. last two lines in table of
right lower window in Figure 5). If o:firstDomain and , o:secondDomain are
provided, OntoEdit outputs the specication for locally inverse relations. If
only o:firstRelation and o:secondRelation are provided, they are assumed
to be immediate inverses.
o:secondDomain, o:secondRelation,
5
Related Work
The proposal described in this paper is based on several related approaches,
viz. we have built on considerations made for the RDF inference service
SiLRi (Decker et al., 1998), the ontology engineering environments ODE
(Blazquez et al., 1998) and Protege (Grosso et al., 1999), the ontology interchange language OIL (Horrocks et al., 2000), considerations made by
16
Gruber (Gruber, 1993), and our own earlier work on general ontology engineering (Maedche et al., 2000; Staab & Maedche, 2000).
A purpose similar to our general goal of representing ontologies in RDF(S)
is pursued with OIL (Horrocks et al., 2000). Actually, OIL might be considered a very sophisticated instantiation of our approach, as the denition of
concepts and relations in description logics is equivalent to the instantiation
of a small number of axiom schemata in a particular logical framework (cf.
(Brachman, 1979)).
There are a numer of other approaches for ontology exchange and representation in XML formats that we do not want to elaborate here, as they
did not intend to support the RDF(S) metadata standard, which is one of
our primary concerns (e.g. (Marchiori & Saarela, 1998; Karp et al., 1999;
Hein & Hendler, 2000)).
Concerning inferencing rather than representation, SiLRi (Decker et al.,
1998) was one of the rst approaches to provide inferencing facilities for
RDF. It delivers most of the basic inferencing functions one wants to have
in RDF and, hence, has provided a good start for many RDF applications.
In fact, it even allows to use axioms, but these axioms may not be denoted in RDF, but only directly in F-Logic. It lacks capabilities for axiom
representation in RDF(S) that our proposal provides.
Concerning engineering, we have discussed how to push the engineering
of ontological axioms from the symbol level onto the knowledge level in our
earlier proposals (Maedche et al., 2000; Staab & Maedche, 2000). There we
follow and extend the general arguments made for ODE (Blazquez et al.,
1998) and Ontolingua (Fikes et al., 1997). This strategy has helped us here
in providing an RDF(S) object representation for a number of dierent axiom types. Nearest to our actual RDF(S)-based ontology engineering tool
is Protege (Grosso et al., 1999), which provides comprehensive nd sophisticated support for editing RDFS and RDF. Nevertheless, Protege currently
lacks any support for axiom modeling and inferencing | though our approach may be very easy to transfer to Protege, too.
6
Discussion
We have presented a new approach towards engineering ontologies in RDF
and RDFS. Our objectives aim at the usage of existing inferencing services
such as provided by deductive database mechanisms (Decker et al., 1998)
or description logics systems (Horrocks, 1998). We reach these objectives
through a methodology that classies axioms into axiom types according
to their semantic meaning. Each type receives an object representation
that abstracts from scoping issues and is easily representable in RDF(S).
Axiom descriptions only keep references to concepts and relations necessary
to distinguish one particular axiom of one type from another one of the
same type.
Our proposed extension of RDF(S) has been made with a clear goal
in mind | the complete retention of the expressibility and semantics of
RDF(S) for the representation of ontologies. This includes the relationship
between ontologies and instances, both represented in RDF(S). Especially,
the notion of consistency (cf. (Brickley & Guha, 1999)) between an RDF
model and a schema also holds for ontologies expressed in RDF(S). The
integration of the newly dened resources has been carried out in a such
a way that all RDF processors capable of processing RDF schemas can
correctly interpret RDF models following the ontology schema, even if they
17
do not understand the semantics of the resources in the o-namespace.
Special applications like OntoEdit (Maedche et al., 2000) can interpret
the o-namespace correctly and thus fully benet from the richer modelling
primitives, if the RDF model is valid10 according to the dened ontology
schema.
The research presented in this paper has been partially funded by BMBF under grant number 01IN802 (project \GETESS")
and by EU in the IST-1999-10132 project On-To-Knowledge. We thank
our student Dirk Wenke who implemented large parts of the RDF(S)-based
ontology editor and our colleague Stefan Decker who rst proposed RDF(S)
for specication of ontologies.
Acknowledgements.
References
Blazquez, M., Fernandez, M., Garcia-Pinar, J. M., & Gomez-Perez, A. (1998).
Building ontologies at the knowledge level using the ontology design environment. In Proc. of the 11th Int. Workshop on Knowledge Acquisition,
Modeling and Mangement (KAW'98), Ban, Canada, October 1998.
Brachman, R. (1979). On the epistomological status of semantic networks. Associative Networks, pages 3{50.
Brickley, D. & Guha, R. (1999). Resource description framework (RDF) schema
specication. Technical report, W3C. W3C Proposed Recommendation.
http://www.w3.org/TR/PR-rdf-schema/.
Decker, S. (1998). On domain-specic declarative knowledge representation and
database languages. In Proc. of the 5th Knowledge Representation meets
Databases Workshop (KRDB98), pages 9.1{9.7.
Decker, S., Brickley, D., Saarela, J., & Angele, J. (1998). A query and inference service for RDF. In QL'98 - The Query Languages Workshop. W3C.
http://www.w3.org/TandS/QL/QL98/.
Fikes, R., Farquhar, A., & Rice, J. (1997). Tools for assembling modular ontologies
in Ontolingua. In Proc. of AAAI 97, pages 436{441.
Grosso, E., Eriksson, H., Fergerson, R. W., Tu, S. W., & Musen, M. M. (1999).
Knowledge modeling at the millennium | the design and evolution of
Protege-2000. In Proc. of the 12th International Workshop on Knowledge
Acquisition, Modeling and Mangement (KAW'99), Ban, Canada, October
1999.
Gruber, T. (1993). A translation approach to portable ontology specications.
Knowledge Acquisition, 5(1):199{220.
Hein, J. & Hendler, J. (2000). Dynamic Ontologies on the Web. In Proceedings
of American Association for Articial Intelligence Conference (AAAI-2000).
Menlo Park, California, AAAI Press, pages 443{449.
Horrocks, I. (1998). Using an expressive description logic: FaCT or ction? In
Proc. of KR-98, pages 636{647.
Horrocks, I., Fensel, D., Broekstra, J., Decker, S., Erdmann, M., Goble, C.,
Harmelen, F. V., Klein, M., Staab, S., & Studer, R. (2000). The ontology
interchange language oil: The grease between ontologies. Technical report,
Dep. of Computer Science, Univ. of Manchester, UK/ Vrije Universiteit Amsterdam, NL/ AIdministrator, Nederland B.V./ AIFB, Univ. of Karlsruhe,
DE. http://www.cs.vu.nl/~dieter/oil/.
10 cf. the \Validator" section in http://www.ics.forth.gr/proj/isst/RDF/ for a
set of operations to check for validity
18
Karp, P. D., Chaudhri, V. K., & Thomere, J. (1999). XOL: An XML-based
ontology exchange language. Technical report. Version 0.3.
Kifer, M., Lausen, G., & Wu, J. (1995). Logical foundations of object-oriented
and frame-based languages. Journal of the ACM, 42(4):741{843.
Lassila, O. & Swick, R. R. (1999). Resource description framework (RDF) model
and syntax specication. Technical report, W3C. W3C Recommendation.
http://www.w3.org/TR/REC-rdf-syntax.
Maedche, A., Schnurr, H.-P., Staab, S., & Studer, R. (2000). Representation
language-neutral modeling of ontologies. In Frank, U. (Ed.), Proceedings of
the German Workshop "Modellierung-2000". Koblenz, Germany, April, 5-7,
2000. Folbach-Verlag.
Marchiori, M. & Saarela, J. (1998).
Query + metadata + logic
= metalog.
In QL'98 - The Query Languages Workshop. W3C.
http://www.w3.org/TandS/QL/QL98/.
Staab, S., Angele, J., Decker, S., Erdmann, M., Hotho, A., Maedche, A., Schnurr,
H.-P., Studer, R., & Sure, Y. (2000). Semantic community web portals. In
WWW9 | Proceedings of the 9th International World Wide Web Conference, Amsterdam, The Netherlands, May, 15-19, 2000. Elsevier.
Staab, S. & Maedche, A. (2001). Knowledge portals | ontologies at work. AI
Magazine, 21(2).
Staab, S., Schnurr, H.-P., Studer, R., & Sure, Y. (2001). Knowledge processes
and ontologies. IEEE Intelligent Systems, 16(1).
Staab, S. & Maedche, A. (2000). Axioms are objects, too | ontology engineering
beyond the modeling of concepts and relations. In Benjamins, V., GomezPerez, A., & Guarino, N. (Eds.), Proceedings of the ECAI 2000 Workshop
on Ontologies and Problem-Solving Methods. Berlin, August 21-22, 2000.
Weibel, S. & Miller, E. (1998). Dublin core metadata. Technical report.
http://purl.oclc.org/dc.
A
The RDF schema for categories of relationships
<?xml version='1.0' encoding='ISO-8859-1'?>
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/TR/1999/PR-rdf-schema-19990303#">
<rdfs:Class ID="Relation">
<rdfs:subClassOf rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/>
</rdfs:Class>
<rdfs:Class ID="Asymmetric">
<rdfs:subClassOf rdf:resource="#Relation"/>
</rdfs:Class>
<rdfs:Class ID="Reflexive">
<rdfs:subClassOf rdf:resource="#Relation"/>
</rdfs:Class>
<rdfs:Class ID="Transitive">
<rdfs:subClassOf rdf:resource="#Relation"/>
</rdfs:Class>
<rdfs:Class ID="Irreflixive">
<rdfs:subClassOf rdf:resource="#Relation"/>
</rdfs:Class>
<rdfs:Class ID="Symmetric">
<rdfs:subClassOf rdf:resource="#Relation"/>
</rdfs:Class>
<rdfs:Class ID="PartOfRel">
<rdfs:subClassOf rdf:resource="#Relation"/>
19
</rdfs:Class>
<rdf:Description ID="isInverseRelationOf">
<rdf:type rdf:resource="#Relation"/>
</rdf:Description>
<!-- Definitions for LOCALLY-INVERSE-RELATIONS -->
<rdfs:Class ID="LocalInverse"/>
<rdf:Property ID="firstDomain">
<rdfs:domain rdf:resource="#LocalInverse"/>
<rdfs:range rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Class"/>
</rdf:Property>
<rdf:Property ID="firstRelation">
<rdfs:domain rdf:resource="#LocalInverse"/>
<rdfs:range rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/>
</rdf:Property>
<rdfs:Property ID="secondDomain">
<rdfs:domain rdf:resource="#LocalInverse"/>
<rdfs:range rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Class"/>
</rdfs:Property>
<rdfs:Property ID="secondRelation">
<rdfs:domain rdf:resource="#LocalInverse"/>
<rdfs:range rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/>
</rdfs:Property>
<!-- Definitions for COMPOSITION -->
<rdfs:Class ID="Composition"/>
<rdf:Property ID="composee">
<rdfs:domain rdf:resource="#Composition"/>
<rdfs:range rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/>
</rdf:Property>
<rdf:Property ID="firstComponent">
<rdfs:domain rdf:resource="#Composition"/>
<rdfs:range rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/>
</rdf:Property>
<rdfs:Property ID="secondComponent">
<rdfs:domain rdf:resource="#Composition"/>
<rdfs:range rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/>
</rdfs:Property>
<!-- Definitions for PARTITION -->
<rdfs:Class ID="Partition"/>
<rdfs:Property ID="partitionee">
<rdfs:domain rdf:resource="#Partition"/>
<rdfs:range rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Property"/>
</rdfs:Property>
<rdfs:Property ID="parts">
<rdfs:domain rdf:resource="#Partition"/>
<rdfs:range rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Bag"/>
</rdfs:Property>
<!-- Definitions for General Axioms-->
<rdfs:Class ID="GeneralAxiom">
<rdfs:subClassOf rdf:resource="http://www.w3.org/TR/1999/PR-rdf-schema-19990303#Resource">
</rdfs:Class>
<rdf:Property ID="lang">
<rdfs:domain rdf:resource="GeneralAxiom"/>
<rdfs:range rdf:resource="http://www.w3.org/TR/xmlschema-2/#string"/>
</rdf:Property>
<rdf:Property ID="text">
<rdfs:domain rdf:resource="GeneralAxiom"/>
<rdfs:range rdf:resource="http://www.w3.org/TR/xmlschema-2/#string"/>
</rdf:Property>
</rdf:RDF>
Download